<?php
		/* SQL */
	// Identifiants pour la base de donnée. Nécessaire a PDO2.
	define('DBNAME', 		'projet');
	define('HOST', 			'localhost');
	define('SQL_DNS', 		'mysql:dbname='.DBNAME.';host='.HOST);
	define('SQL_USERNAME', 	'root');
	define('SQL_PASSWORD', 	'');

	// Connexion LDAP
	define('LDAPHOST',		'srv-laurel.iut-acy.local');
	define('LDAPPORT',		389);

	// Chaînes de caratères nécessaire aux requêtes
	// ADC : Action De Communication

	//TABLES
	define('TABLE_ADC',			'action');
	define('TABLE_ATTENTE_ADC',	'attenteAction');
	define('TABLE_ATTENTE_FORUM','attenteForum');
	define('TABLE_ETAT',		'etat');
	define('TABLE_TACHE',		'tache');
	define('TABLE_FORUM',		'forum');
	define('TABLE_THEME',		'theme');
	define('TABLE_ETUDIANT',	'etudiants');
	define('TABLE_ETUDIANT_PROMO','etudiantspromos');
	define('TABLE_PROF',		'prof');
	define('TABLE_PARTICIPE',	'participe');
	define('TABLE_PARTICIPE_A',	'participe_a');
	define('TABLE_INSCRIT',		'inscrit');
	define('TABLE_INSCRIT_A',	'inscrit_a');
	define('TABLE_DEPENSE',		'depense');
	define('TABLE_EVALUATION_ELEVE', 'evaluationEleve');
	define('TABLE_FICHE_BILAN_ACTION', 'ficheBilanAction');
	define('TABLE_FICHE_BILAN_FORUM', 'ficheBilanForum');
	define('TABLE_RECETTE', 'recette');
	define('TABLE_PARAMETRE', 'parametre');

	//attributs TABLE_ADC
	define('ETAT_ADC',			'CodeEtat');
	define('THEME_ADC',			'CodeTheme');
	define('COMMENTAIRE_ADC',	'CommA');
	define('DATE_ADC',			'DateA');
	define('DATE_LIMITE_ADC',	'DateLimiteA');
	define('ID_ADC',			'IDAction');
	define('NOMBRE_ETUDIANT_ADC','NbEtuA');
	define('NOTE_MAX_ADC',		'NoteMaxA');
	define('TITRE_ADC',			'TitreAction');
	define('LOGIN_PROF_ADC',	'LoginP');
	define('GROUPE_FORUM_ADC',	'GroupeForum');

	//attributs TABLE_ETAT
	define('CODE_ETAT',			'CodeEtat');
	define('LIBELLE_ETAT',		'LibelleE');

	//attributs TABLE_FORUM
	define('ETAT_FORUM',		'CodeEtat');
	define('COMMENTAIRE_FORUM',	'CommF');
	define('DATE_FORUM',		'DateF');
	define('DATE_LIMITE_FORUM',	'DateLimiteF');
	define('HEURE_DEB_FORUM',	'HeureDeb');
	define('HEURE_FIN_FORUM',	'HeureFin');
	define('ID_ADC_FORUM',		'IDAction');
	define('ID_FORUM',			'IDForum');
	define('LIEU_FORUM',		'Lieu');
	define('NOTE_MAX_FORUM',	'NoteMaxF');
	define('NB_ETU_FORUM',		'NbEtuF');
	define('NOM_LYCEE_FORUM',	'NomLycee');
	define('TITRE_FORUM',		'TitreForum');
	define('LOGIN_PROF_FORUM', 	'LoginP');
	define('ID_ETU1_FORUM', 	'ETUDIANTID1');
	define('ID_ETU2_FORUM', 	'ETUDIANTID2');
	define('NOTE1_FORUM', 		'Note1');
	define('NOTE2_FORUM', 		'Note2');

	//attributs TABLE_THEME
	define('CODE_THEME',		'CodeTheme');
	define('LIBELLE_THEME',		'LibelleT');

	//attributs TABLE_ETUDIANT
	define('ID_ETU',		'ETUDIANTID');
	define('LOGIN_ETU',		'LOGINET');
	define('MAIL_ETU',		'MAILET');
	define('NOM_ETU',		'NOMET');
	define('PRENOM_ETU',	'PRENOMET');

	//attributs TABLE_ETUDIANT_PROMO
	define('ANNEE_ETU_PROMO','ANNEEP');
	define('ETU_ID_PROMO',	'ETUDIANTID');
	define('TD_ETU_PROMO',	'TD');

	//attributs TABLE_PROF
	define('LOGIN_PROF',		'LoginP');
	define('NOM_PROF',			'NomP');
	define('PRENOM_PROF',		'PrenomP');
	define('MAIL_PROF',			'MailP');

	//attributs TABLE_PARTICIPE
	define('ID_ETU_PARTICIPE','ETUDIANTID');
	define('ID_ADC_PARTICIPE', 'IDAction');
	define('NOTE_PARTICIPE', 	'Note');
	define('CONFIRM_FICHE_ADC',	'ConfirmFiche');

	//attributs TABLE_ATTENTE_ADC
	define('ID_ETU_ATTENTE_ADC','ETUDIANTID');
	define('ID_ADC_ATTENTE_ADC', 'IDAction');
	define('RANG_ATTENTE_ADC', 	'RangAction');

	//attributs TABLE_ATTENTE_FORUM
	define('ID_ETU_ATTENTE_FORUM','ETUDIANTID');
	define('ID_FORUM_ATTENTE_FORUM', 'IDForum');
	define('RANG_ATTENTE_FORUM', 	'RangForum');

	//attributs TABLE_DEPENSE
	define('ID_DEPENSE','IDDepense');
	define('LIBELLE_DEPENSE', 'LibelleDepense');
	define('BUDGET_DEPENSE','BudgetDepense');
	define('FOURNISSEUR_DEPENSE', 'Fournisseur');
	define('ID_ADC_DEPENSE', 'IDAction');
	define('AUTEUR_DEPENSE', 'AuteurDepense');

	//attributs TABLE_EVALUATION_ELEVE
	define('ID_EVALUATION','IDEvaluation');
	define('ID_ETU_EVALUATION', 'ETUDIANTID');
	define('ID_FORUM_EVALUATION','IDForum');
	define('PRESENT_EVALUATION', 'Present');
	define('PRESENCE_EVALUATION', 'Presence');
	define('DUREE_PRESENCE_EVALUATION','DureePresence');
	define('TENUE_VESTIMENTAIRE_EVALUATION', 'TenueVestimentaire');
	define('DISCOURS_EVALUATION','Discours');
	define('LOGISTIQUE_EVALUATION', 'ParticipationLogistique');
	define('COMMENTAIRE_EVALUATION', 'Commentaire');

	//attributs TACHE_FICHE_BILAN_ACTION
	define('ID_FICHE_BILAN_ACTION','IDFicheAction');
	define('ID_ACTION_FICHE_BILAN_ACTION', 'IDAction');
	define('TRAVAIL_EFFECTUE_FICHE_BILAN_ACTION','TravailEffectue');
	define('POINT_POSITIF_FICHE_BILAN_ACTION','PointPositif');
	define('POINT_NEGATIF_FICHE_BILAN_ACTION', 'PointNegatif');
	define('BON_A_SAVOIR_FICHE_BILAN_ACTION', 'BonASavoir');
	define('SUGGESTION_FICHE_BILAN_ACTION', 'Suggestion');
	define('NB_CONFIRM_FICHE_BILAN_ACTION', 'NombreEtuConfirm');
	define('ETAT_FICHE_BILAN_ACTION', 'EtatFicheA');

	//attributs TABLE_FICHE_BILAN_FORUM
	define('ID_FICHE_BILAN_FORUM','IDFicheForum');
	define('ID_FORUM_FICHE_BILAN_FORUM', 'IDForum');
	define('DUREE_FICHE_BILAN_FORUM','DureeEffectivePresence');
	define('TEMPS_TRAJET_FICHE_BILAN_FORUM','TempsTrajet');
	define('ACCUEIL_FICHE_BILAN_FORUM','Accueil');
	define('EMPLACEMENT_FICHE_BILAN_FORUM','Emplacement');
	define('CIRCULATION_FICHE_BILAN_FORUM', 'Circulation');
	define('FREQUENTATION_FICHE_BILAN_FORUM','Frequentation');
	define('INTERET_RENOUVELER_FICHE_BILAN_FORUM', 'InteretRenouveler');
	define('COMMENTAIRE_FICHE_BILAN_FORUM', 'Commentaire');
	define('ETAT_FICHE_BILAN_FORUM', 'EtatFicheF');

	//attributs TABLE_RECETTE
	define('ID_RECETTE','IDRecette');
	define('LIBELLE_RECETTE', 'LibelleRecette');
	define('BUDGET_RECETTE','BudgetRecette');
	define('ID_ADC_RECETTE', 'IDAction');
	define('AUTEUR_RECETTE', 'AuteurRecette');

	//attributs TABLE_TACHE
	define('ID_TACHE','IDTache');
	define('LIBELLE_TACHE', 'LibelleTache');
	define('ECHEANCE_TACHE','Echeance');
	define('ID_ETU_TACHE', 'ETUDIANTID');
	define('ID_ADC_TACHE', 'IDAction');
	define('AUTEUR_TACHE', 'AuteurTache');

	//attributs TABLE_PARAMETRE
	define('ID_PARAMETRE', 'IDParam');
	define('LIBELLE_PARAMETRE', 'LibelleParam');
	define('VALEUR_PARAMETRE', 'ValeurParam');

	define('LUNDI', 'Lundi de l\'info');

	//Requêtes

	define('REQ_ID_MAX_ADC',	'SELECT MAX('.ID_ADC.')
								FROM '.TABLE_ADC);

	define('REQ_ID_MAX_FORUM',	'SELECT MAX('.ID_FORUM.')
								FROM '.TABLE_FORUM);

	define('REQ_ALL_ADC',		'SELECT ADC.'.ID_ADC.', '.TITRE_ADC.', DATE_FORMAT('.DATE_ADC.',\'%d/%m/%Y\') AS "'.DATE_ADC.'" , DATE_FORMAT('.DATE_LIMITE_ADC.',\'%d/%m/%Y\') AS "'.DATE_LIMITE_ADC.'" , '.NOTE_MAX_ADC.', '.COMMENTAIRE_ADC.', '.ETAT_ADC.', '.NOMBRE_ETUDIANT_ADC.', '.THEME_ADC.', '.GROUPE_FORUM_ADC.', '.NOM_PROF.', '.PRENOM_PROF.', P.'.LOGIN_PROF.'
								FROM '.TABLE_ADC.' ADC
									LEFT JOIN '.TABLE_PROF.' P ON ADC.'.LOGIN_PROF_ADC.' = P.'.LOGIN_PROF);

	define('REQ_ALL_FORUM',		'SELECT F.'.ID_FORUM.', F.'.ETAT_FORUM.', '.TITRE_FORUM.', '.COMMENTAIRE_FORUM.', DATE_FORMAT('.DATE_FORUM.',\'%d/%m/%Y\') AS "'.DATE_FORUM.'" , DATE_FORMAT('.DATE_LIMITE_FORUM.',"%d/%m/%Y") AS "'.DATE_LIMITE_FORUM.'", TIME_FORMAT('.HEURE_DEB_FORUM.',"%H:%i") AS "'.HEURE_DEB_FORUM.'", TIME_FORMAT('.HEURE_FIN_FORUM.',"%H:%i")  AS "'.HEURE_FIN_FORUM.'", '.LIEU_FORUM.', '.NOTE_MAX_FORUM.', '.NOM_LYCEE_FORUM.', '.NOTE1_FORUM.', '.NOTE2_FORUM.', '.NOM_PROF.', '.PRENOM_PROF.', P.'.LOGIN_PROF.', e1.'.NOM_ETU.' AS "nom1" , e1.'.PRENOM_ETU.' AS "prenom1" , '.ID_ETU1_FORUM.', EP1.'.TD_ETU_PROMO.' AS "tdetu1", EP1.'.ANNEE_ETU_PROMO.' AS "anneeetu1", e2.'.NOM_ETU.' AS "nom2" , e2.'.PRENOM_ETU.' AS "prenom2" , '.ID_ETU2_FORUM.', EP2.'.TD_ETU_PROMO.' AS "tdetu2" , EP2.'.ANNEE_ETU_PROMO.' AS "anneeetu2", ADC.'.TITRE_ADC.', F.'.ID_ADC_FORUM.', '.DATE_FORUM.' AS date
								FROM '.TABLE_FORUM.' F
									LEFT JOIN '.TABLE_PROF.' P ON F.'.LOGIN_PROF_FORUM.' = P.'.LOGIN_PROF.'
									LEFT JOIN '.TABLE_ETUDIANT.' e1 ON F.'.ID_ETU1_FORUM.' = e1.'.ID_ETU.'
									LEFT JOIN '.TABLE_ETUDIANT.' e2 ON F.'.ID_ETU2_FORUM.' = e2.'.ID_ETU.'
									LEFT JOIN '.TABLE_ETUDIANT_PROMO.' EP1 ON e1.'.ID_ETU.' = EP1.'.ETU_ID_PROMO.'
									LEFT JOIN '.TABLE_ETUDIANT_PROMO.' EP2 ON e2.'.ID_ETU.' = EP2.'.ETU_ID_PROMO.'
									JOIN '.TABLE_ADC.' ADC ON F.'.ID_ADC_FORUM.' = ADC.'.ID_ADC.'
									JOIN '.TABLE_ETAT.' E ON F.'.ETAT_FORUM.' = E.'.CODE_ETAT);

	define('REQ_ALL_PROF', 		'SELECT '.LOGIN_PROF.', '.NOM_PROF.', '.PRENOM_PROF.', '.MAIL_PROF.'
								FROM '.TABLE_PROF);

	define('REQ_ALL_THEME', 	'SELECT '.CODE_THEME.', '.LIBELLE_THEME.'
								FROM '.TABLE_THEME);

		/* PHP */
	// Générale
	define('TITRE_SITE', 'Gestion des actions de communication');

	// Chemins à utiliser pour accéder aux différentes ressources.
	$module = empty($module) ? !empty($_GET['module']) ? $_GET['module'] : 'index' : $module;

	define('CHEMIN_VUE',    				'modules/'.$module.'/vues/');
	define('CHEMIN_MODELE', 				'modeles/');
	define('CHEMIN_CONTROLEUR',				'modules/'.$module.'/controleur/');
	define('CHEMIN_LIB',    				'lib/');
	define('CHEMIN_RESSOURCES_MODELE_PDF', 	'ressources/ModelePDF/');
	define('CHEMIN_IMAGES', 				'ressources/images/');
	define('CHEMIN_STYLES', 				'style/');
	define('CHEMIN_TEXTES', 				'ressources/textes/');
	define('CHEMIN_MAILS', 					'ressources/textes/mails/');

	//Administration
	if(!isset($_SERVER["ADMIN_LOGIN"]))
	{
		$bdd = PDO2::getInstance();
		$d = $bdd->query(
					'SELECT '.VALEUR_PARAMETRE.'
					FROM '.TABLE_PARAMETRE.'
					WHERE '.LIBELLE_PARAMETRE.' = "Administrateur"');
		$d = $d->fetch();
		$_SERVER["ADMIN_LOGIN"] = $d[VALEUR_PARAMETRE];
	}
	
	define('ADMIN_LOGIN', 		$_SERVER["ADMIN_LOGIN"]);
	define('EMAIL_PROF',		'@univ-savoie.fr');
	define('EMAIL_ETUDIANT',	'@etu.univ-savoie.fr');
?>